﻿namespace IMModel.Domain.Common
{
    /// <summary>
    /// Определяет типы, которые могут вычислять объёмы показателей для заданного контекста
    /// </summary>
    /// <typeparam name="T">Тип контекста</typeparam>
    public interface IVolumes<T>
    {
        //RespondentIndexCollection GetVolumes(T context);

        /// <summary>
        /// Вычисляет объёмы показателей для заданного  типа, передавая в качестве параметра экземпляр периода для которого происходит расчёт объёмов
        /// </summary>
        /// <param name="context">Объект для которого вычисляется объём показателей</param>
        /// <param name="sender">Отправитель запроса</param>
        /// <returns>Объёмы показателей</returns>
        RespondentIndexCollection GetVolumes(IndexContext сontext, T contextTerm, Term sender);
    }
}
